<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Class implementation file</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Class_implementation_file"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Class_implementation_file rootpage-Class_implementation_file skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Class implementation file</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p>In <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented programming</a>, a <b>class implementation file</b> is often used to contain the implementation code for the <a href="Method_(computer_programming)" title="Method (computer programming)">method(s)</a> of a <a href="Class_(computer_programming)" title="Class (computer programming)">class</a>. Programming languages like C++ and Objective-C make use of these implementation files so as to separate the interface and implementation of these methods.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Motivation">Motivation</h2></div>
<p>Using this structure, a <a href="Class_definition" class="mw-redirect" title="Class definition">class definition</a> file containing the declaration of the class and its members is also created. If the class definition has been included and the implementation file for its methods is available, the user can <a href="Instance_(computer_science)" title="Instance (computer science)">instantiate</a> an <a href="Object_(computer_science)" title="Object (computer science)">object</a> of the class. The purpose of this structure is to keep the implementation code hidden, but allow the user to view the design.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><p>Users make use of the public interface of an <a href="Object_(computer_science)" title="Object (computer science)">object</a> so as to make creating objects as simple as possible, ensuring that client code does not distract the user with unnecessary details of the class's implementation.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
This allows the user the information needed to use the class effectively, but prevents him or her from damaging the compiled code.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="The_structure_of_a_class_implementation_file">The structure of a class implementation file</h2></div>
<p>An implementation file is used in <a href="The_C%2B%2B_Programming_Language" title="The C++ Programming Language">C++ programming</a> when creating a <a href="Class_definition" class="mw-redirect" title="Class definition">class definition</a> to split the interface from the implementation. The <a href="Header_file" class="mw-redirect" title="Header file">header file</a> would declare all the <a href="C%2B%2B_classes" title="C++ classes">member functions</a> (methods) and <a href="C%2B%2B_classes" title="C++ classes">data methods</a> (fields) that the class has.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>
</p><p>The implementation file will contain the actual definition or <a href="Source_code" title="Source code">source code</a> of the methods declared in the <a href="Header_file" class="mw-redirect" title="Header file">header file</a>. This file can start with a header block, which provides comments that describe the purpose of the defined class and any details about the creation of the actual file, such as the author of the file and date the file was created.<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup>
It can also include any libraries from the <a href="C%2B%2B_Standard_Library" title="C++ Standard Library">C++ Standard Library</a> that will be used by any of the declared methods in the file. The <b>class implementation file</b> will usually have a line to include the associated header file (see examples below).
</p>
<div class="mw-heading mw-heading3"><h3 id="Example_in_C++">Example in C++</h3></div>
<p>An example would be having a class called <code>ExampleClass</code>. The header file of this C++ file would be named "example_class.h" and the implementation file would be "example_class.cc".<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup>
</p><p>An example of the structure of <b>example_class.cc</b> would look like this:
</p>
<div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span class="cp">#include</span><span class="w"> </span><span class="cpf">"example_class.h"</span>
<span class="n">ExampleClass</span><span class="o">::</span><span class="n">ExampleClass</span><span class="p">()</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">default</span><span class="p">;</span>
<span class="kt">void</span><span class="w"> </span><span class="nf">ExampleClass::AddSomething</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">k</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="p">...</span>
<span class="p">}</span>
</pre></div>
<p>In this example, the implementation for the functions has been omitted, but the functions must be declared in <b>example_class.h</b> like this:<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span class="cp">#include</span><span class="w"> </span><span class="cpf"><string></span>
<span class="k">class</span><span class="w"> </span><span class="nc">ExampleClass</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="k">public</span><span class="o">:</span>
<span class="w"> </span><span class="n">ExampleClass</span><span class="p">();</span><span class="w"> </span><span class="c1">// Constructor.</span>
<span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">AddSomething</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">k</span><span class="p">);</span>
<span class="w"> </span><span class="k">private</span><span class="o">:</span>
<span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="w"> </span><span class="n">name_</span><span class="p">;</span><span class="w"> </span>
<span class="p">};</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Example_in_Objective-C">Example in Objective-C</h3></div>
<p>Another example of how a class implementation file would be structured can be seen with <a href="Objective-C" title="Objective-C">Objective-C</a>, which is used in <a href="IOS" title="IOS">iOS</a> programming.<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup>
This example will use "ExampleClass". A notable difference between C++ and <a href="Objective-C" title="Objective-C">Objective-C</a> when making use of these implementation files is the extensions used at the end of the files. In C++ it will be <b>.cpp</b><sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup>
and in <a href="Objective-C" title="Objective-C">Objective-C</a> it will be <b>.m</b>,<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup>
but both will use the same <b>.h</b> extension for their <a href="Header_file" class="mw-redirect" title="Header file"> header file(s)</a><sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup>
as shown in the example below.
</p><p>This is an example of <b>ExampleClass.h</b> in <a href="Objective-C" title="Objective-C">Objective-C</a>:
</p>
<div class="mw-highlight mw-highlight-lang-objc mw-content-ltr" dir="ltr"><pre><span class="cp">#import <UIKit/UIKit.h></span>
<span class="k">@interface</span> <span class="nc">ExampleClass</span> : <span class="bp">NSObject</span> <span class="p">{</span>
<span class="w"> </span><span class="c1">// instance variable declarations go here</span>
<span class="p">}</span>
<span class="p">-</span> <span class="p">(</span><span class="bp">NSString</span><span class="o">*</span><span class="p">)</span> <span class="nf">name</span><span class="p">;</span>
<span class="k">@end</span>
</pre></div>
<p>This is an example of the <b>class's implementation file</b> <b>Exampleclass.m</b> in <a href="Objective-C" title="Objective-C">Objective-C</a>:
</p>
<div class="mw-highlight mw-highlight-lang-objc mw-content-ltr" dir="ltr"><pre><span class="cp">#import "ExampleClass.h"</span>
<span class="k">@implementation</span> <span class="nc">ExampleClass</span>
<span class="p">-</span> <span class="p">(</span><span class="bp">NSString</span><span class="o">*</span><span class="p">)</span> <span class="nf">name</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="s">@"…"</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">@end</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="C%2B%2B_classes" title="C++ classes">C++ classes</a></li>
<li><a href="Header_file" class="mw-redirect" title="Header file">Header file</a></li>
<li><a href="Source_code" title="Source code">Source code</a></li>
<li><a href="C%2B%2B_Standard_Library" title="C++ Standard Library">C++ Standard Library</a></li>
<li><a href="Objective-C" title="Objective-C">Objective-C</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text">
<style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFAlan_Griffiths2005" class="citation web cs1">Alan Griffiths (2005). <a rel="nofollow" class="external text" href="http://accu.org/index.php/journals/269">"Separating Interface and Implementation in C++"</a>. ACCU<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text">
<cite id="CITEREFAlan_Griffiths2005" class="citation web cs1">Alan Griffiths (2005). <a rel="nofollow" class="external text" href="http://accu.org/index.php/journals/269">"Separating Interface and Implementation in C++"</a>. ACCU<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text">
<cite id="CITEREFNeuberg2011" class="citation book cs1">Neuberg, Matt (26 May 2011). "Chapter 4.3 Header File and Implementation File". <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/programmingios40000neub"><i>Programming iOS 4</i></a></span>. O'Reilly Media, Inc. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-1-4493-8843-0</bdi>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text">
<cite id="CITEREFAlan_Griffiths2005" class="citation web cs1">Alan Griffiths (2005). <a rel="nofollow" class="external text" href="http://accu.org/index.php/journals/269">"Separating Interface and Implementation in C++"</a>. ACCU<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.chromium.org/developers/coding-style/cpp-dos-and-donts">"C++ Dos and Don'ts"</a>. The Chromium Projects<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://pages.cs.wisc.edu/~hasti/cs368/CppTutorial/NOTES/CLASSES-INTRO.html">"Introduction to C++ Classes"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text">
<cite id="CITEREFAlan_Griffiths2005" class="citation web cs1">Alan Griffiths (2005). <a rel="nofollow" class="external text" href="http://accu.org/index.php/journals/269">"Separating Interface and Implementation in C++"</a>. ACCU<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text">
<cite id="CITEREFFebil_Chacko_Thanikal2009" class="citation web cs1">Febil Chacko Thanikal (2009). <a rel="nofollow" class="external text" href="http://www.codeproject.com/Articles/48575/How-to-define-a-template-class-in-a-h-file-and-imp">"How to define a template class in a .h file and implement it in a .cpp file"</a>. Code Project<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.itechtalk.com/thread1517.html">"The implementation file in C++ Programming"</a>. ITechTalk<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://pages.cs.wisc.edu/~hasti/cs368/CppTutorial/NOTES/CLASSES-INTRO.html">"Introduction to C++ Classes"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text">
<cite id="CITEREFNeuberg2011" class="citation book cs1">Neuberg, Matt (26 May 2011). "Chapter 4.3 Header File and Implementation File". <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/programmingios40000neub"><i>Programming iOS 4</i></a></span>. O'Reilly Media, Inc. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-1-4493-8843-0</bdi>.</cite></span>
</li>
<li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://pages.cs.wisc.edu/~hasti/cs368/CppTutorial/NOTES/CLASSES-INTRO.html">"Introduction to C++ Classes"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text">
<cite id="CITEREFNeuberg2011" class="citation book cs1">Neuberg, Matt (26 May 2011). "Chapter 4.3 Header File and Implementation File". <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/programmingios40000neub"><i>Programming iOS 4</i></a></span>. O'Reilly Media, Inc. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-1-4493-8843-0</bdi>.</cite></span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://pages.cs.wisc.edu/~hasti/cs368/CppTutorial/NOTES/CLASSES-INTRO.html">"Introduction to C++ Classes"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text">
<cite id="CITEREFNeuberg2011" class="citation book cs1">Neuberg, Matt (26 May 2011). "Chapter 4.3 Header File and Implementation File". <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/programmingios40000neub"><i>Programming iOS 4</i></a></span>. O'Reilly Media, Inc. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-1-4493-8843-0</bdi>.</cite></span>
</li>
<li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text">
<cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://pages.cs.wisc.edu/~hasti/cs368/CppTutorial/NOTES/CLASSES-INTRO.html">"Introduction to C++ Classes"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-05-07</span></span>.</cite></span>
</li>
<li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text">
<cite id="CITEREFNeuberg2011" class="citation book cs1">Neuberg, Matt (26 May 2011). "Chapter 4.3 Header File and Implementation File". <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/programmingios40000neub"><i>Programming iOS 4</i></a></span>. O'Reilly Media, Inc. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-1-4493-8843-0</bdi>.</cite></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://my.safaribooksonline.com/book/programming/iphone/9781449397302/objective-c-classes/_header_file_and_implementation_file">Header File and Implementation File</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-07-16" href="https://en.wikipedia.org/wiki/?title=Class_implementation_file&oldid=1300865889">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>